package com.zt.springcloud.mapper;

import com.zt.springcloud.entity.Order;
import com.zt.springcloud.entity.vo.ProductVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.math.BigDecimal;
import java.util.List;

@Mapper
public interface OrderMapper {
    /*
    * 创建订单
    * */
    Boolean createOrder(Order order);

    /*
    * 添加订单商品
    * */
    Boolean addOrderItem(@Param("orderId") String orderId, @Param("itemId")Long itemId, @Param("amount")Integer amount, @Param("price") BigDecimal price, @Param("delivery")String delivery);

    /*
    * 查询用户订单号
    * */
    List<String> getOrderId(Long userId);
    /*
    * 根据订单号查询所有商品
    * */
    List<ProductVo> getAllOrderItemsById(String orderId);
    /*
    * 根据订单号查询创建订单时间
    * */
    String selectOrderCreateTime(String orderId);
    /*
    * 根据商品Id删除订单中的商品
    * */
    Boolean deleteItemOrder(String orderId);

    /*
    * 根据商品Id,用户id删除订单详情中的商品
    * */
    Boolean deleteItemOrderItems(String orderId);

}
